Systems that perform natural language processing such as spell checkers, grammar checkers and the like encounter compound words during the course of processing textual inputs. The large number of words that can be formed from two or more words into compound words make it difficult to create a lexicon to recognize a large number of compound words. Furthermore, the combination of two or more words may result in the alteration of at least one of the words in the resultant compound word.
Thus, natural language processing systems advantageously include the ability to dynamically recognize compound words that include words or word segments stored in a lexicon, even if the compound word itself is not stored in the lexicon. Dynamic recognition of compound word can include the application of rules to entries in a lexicon. Typically such rules are hard coded into an algorithm.
While dynamic recognition of compound words provides a way to recognize valid words that may not be a part of the lexicon, some issues remain. For example, such schemes for dynamic recognition are limited to the usage of rules previously encoded into the algorithm. Thus, any additional rules or lexicon entries will necessitate a recompilation of the entire algorithm or the creation of an entirely new algorithm. Therefore, what is needed is a dynamic recognition scheme that addresses these issues.
The discussion above is merely provided for general background information and is not intended to be used as an aid in determining the scope of the claimed subject matter.